﻿<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
                    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:Fluent="clr-namespace:Fluent"
                    mc:Ignorable="d">
  <ResourceDictionary.MergedDictionaries>
    <ResourceDictionary
Source="pack://application:,,,/Fluent;component\Themes\Office2010\Controls\RibbonScrollViewer.xaml" />
  </ResourceDictionary.MergedDictionaries>
  <Fluent:ObjectToImageConverter x:Key="StringToImageConvert" />
  <ControlTemplate x:Key="ResizeBothThumbControlTemplate" TargetType="{x:Type Thumb}">
    <Grid Background="#00000000">
      <Rectangle Fill="White" StrokeThickness="0" Width="2" Height="2" VerticalAlignment="Bottom"
                 HorizontalAlignment="Right" Margin="0,0,2,1" />
      <Rectangle Fill="White" StrokeThickness="0" HorizontalAlignment="Right" Margin="0,0,2,5"
                 VerticalAlignment="Bottom" Width="2" Height="2" />
      <Rectangle Fill="White" StrokeThickness="0" HorizontalAlignment="Right" Margin="0,0,6,1"
                 VerticalAlignment="Bottom" Width="2" Height="2" />
      <Rectangle Fill="#FFB5BEC7" StrokeThickness="0" HorizontalAlignment="Right" Margin="0,0,3,2"
                 VerticalAlignment="Bottom" Width="2" Height="2" />
      <Rectangle Fill="#FFB5BEC7" StrokeThickness="0" HorizontalAlignment="Right" Margin="0,0,3,6"
                 VerticalAlignment="Bottom" Width="2" Height="2" />
      <Rectangle Fill="#FFB5BEC7" StrokeThickness="0" HorizontalAlignment="Right" Margin="0,0,7,2"
                 VerticalAlignment="Bottom" Width="2" Height="2" />
    </Grid>
  </ControlTemplate>
  <ControlTemplate x:Key="ResizeVerticalThumbControlTemplate" TargetType="{x:Type Thumb}">
    <Grid Background="#00000000">
      <StackPanel Margin="0,1,0,0" Orientation="Horizontal" d:LayoutOverrides="Height" HorizontalAlignment="Center"
                  VerticalAlignment="Center">
        <Grid HorizontalAlignment="Left" Margin="1,0,0,0" Width="Auto" Height="Auto">
          <Rectangle Fill="White" StrokeThickness="0" HorizontalAlignment="Center" Margin="0"
                     VerticalAlignment="Center" Width="2" Height="2" />
          <Rectangle Fill="#FFB5BEC7" StrokeThickness="0" HorizontalAlignment="Center" Margin="0,0,1,1"
                     VerticalAlignment="Center" Width="2" Height="2" />
        </Grid>
        <Grid HorizontalAlignment="Left" Margin="1,0,0,0" Width="Auto" Height="Auto">
          <Rectangle Fill="White" StrokeThickness="0" HorizontalAlignment="Center" Margin="0"
                     VerticalAlignment="Center" Width="2" Height="2" />
          <Rectangle Fill="#FFB5BEC7" StrokeThickness="0" HorizontalAlignment="Center" Margin="0,0,1,1"
                     VerticalAlignment="Center" Width="2" Height="2" />
        </Grid>
        <Grid HorizontalAlignment="Left" Margin="1,0,0,0" Width="Auto" Height="Auto">
          <Rectangle Fill="White" StrokeThickness="0" HorizontalAlignment="Center" Margin="0"
                     VerticalAlignment="Center" Width="2" Height="2" />
          <Rectangle Fill="#FFB5BEC7" StrokeThickness="0" HorizontalAlignment="Center" Margin="0,0,1,1"
                     VerticalAlignment="Center" Width="2" Height="2" />
        </Grid>
        <Grid HorizontalAlignment="Left" Margin="1,0,0,0" Width="Auto" Height="Auto">
          <Rectangle Fill="White" StrokeThickness="0" HorizontalAlignment="Center" Margin="0"
                     VerticalAlignment="Center" Width="2" Height="2" />
          <Rectangle Fill="#FFB5BEC7" StrokeThickness="0" HorizontalAlignment="Center" Margin="0,0,1,1"
                     VerticalAlignment="Center" Width="2" Height="2" />
        </Grid>
      </StackPanel>
    </Grid>
  </ControlTemplate>
  
  <!--Menu Item Template-->
  <ControlTemplate x:Key="MenuItemTemplate" TargetType="{x:Type MenuItem}">
    <ControlTemplate.Resources>
      <ResourceDictionary>
        <Style x:Key="{x:Type ScrollViewer}" TargetType="{x:Type ScrollViewer}"
               BasedOn="{StaticResource MenuScrollViewer}" />
      </ResourceDictionary>
    </ControlTemplate.Resources>
    <Grid Width="Auto" Height="22" Background="#00000000">
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="25" />
        <ColumnDefinition Width="*" />
        <ColumnDefinition Width="Auto" />
      </Grid.ColumnDefinitions>
      <Border x:Name="border" HorizontalAlignment="Stretch" Margin="0" Width="Auto" Visibility="Collapsed"
              Background="{DynamicResource ButtonHoverOuterBackgroundBrush}"
              BorderBrush="{DynamicResource ButtonHoverOuterBorderBrush}" BorderThickness="1" CornerRadius="2" Grid.Column="0"
              Grid.ColumnSpan="3">
        <Border Background="{DynamicResource ButtonHoverInnerBackgroundBrush}"
                BorderBrush="{DynamicResource ButtonHoverInnerBorderBrush}" BorderThickness="1" CornerRadius="1" />
      </Border>
      <TextBlock x:Name="textBlock_Copy" Text="{TemplateBinding Header}" Width="Auto" Height="Auto" Margin="9,3,13,3"
                 VerticalAlignment="Center" Grid.Column="1" TextTrimming="None" d:LayoutOverrides="Width" Visibility="Hidden"
                 HorizontalAlignment="Left" />
      <TextBlock x:Name="textBlock" Text="{TemplateBinding Header}" Width="Auto" Height="Auto" Margin="9,3,3,3"
                 VerticalAlignment="Center" Grid.Column="1" d:LayoutOverrides="Width" TextTrimming="CharacterEllipsis" />
      <Rectangle x:Name="rectangle" Fill="{DynamicResource MenuItemCheckBoxBackgroundBrush}"
                 Stroke="{DynamicResource MenuItemCheckBoxBorderBrush}" Grid.ColumnSpan="1" HorizontalAlignment="Center"
                 VerticalAlignment="Center" Width="20" Height="20" RadiusX="1" RadiusY="1" Visibility="Collapsed" />
      <Image x:Name="image" HorizontalAlignment="Center" VerticalAlignment="Center"
             Source="/Fluent;Component/Themes/Office2010/Images/Checked.png" Stretch="None" Visibility="Collapsed"
             SnapsToDevicePixels="True" />
      <ContentPresenter x:Name="iconImage" HorizontalAlignment="Center" Height="16" VerticalAlignment="Center"
                        Content="{Binding Icon, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource StringToImageConvert}}"
                        Width="16" Margin="3,2,2,2" SnapsToDevicePixels="True" />
      <TextBlock x:Name="gestureTextBlock" Text="{TemplateBinding InputGestureText}" Width="Auto" Height="Auto"
                 Margin="3,3,15,3" VerticalAlignment="Center" Grid.Column="2" />
    </Grid>
    <ControlTemplate.Triggers>
      <Trigger Property="InputGestureText" Value="{x:Null}">
        <Setter Property="Visibility" TargetName="gestureTextBlock" Value="Collapsed" />
      </Trigger>
      <Trigger Property="InputGestureText" Value="">
        <Setter Property="Visibility" TargetName="gestureTextBlock" Value="Collapsed" />
      </Trigger>
      <Trigger Property="IsChecked" Value="True">
        <Setter Property="Visibility" TargetName="rectangle" Value="Visible" />
      </Trigger>
      <MultiTrigger>
        <MultiTrigger.Conditions>
          <Condition Property="Icon" Value="{x:Null}" />
          <Condition Property="IsChecked" Value="True" />
        </MultiTrigger.Conditions>
        <Setter Property="Visibility" TargetName="image" Value="Visible" />
      </MultiTrigger>
      <MultiTrigger>
        <MultiTrigger.Conditions>
          <Condition Property="IsHighlighted" Value="True" />
          <Condition Property="IsEnabled" Value="True" />
        </MultiTrigger.Conditions>
        <Setter Property="Visibility" TargetName="border" Value="Visible" />
      </MultiTrigger>
      <Trigger Property="IsEnabled" Value="False">
        <Setter Property="Opacity" TargetName="iconImage" Value="0.5" />
        <Setter Property="Opacity" TargetName="image" Value="0.5" />
        <Setter Property="Opacity" TargetName="textBlock" Value="0.5" />
        <Setter Property="Opacity" TargetName="gestureTextBlock" Value="0.5" />
        <Setter Property="Effect" TargetName="iconImage">
          <Setter.Value>
            <Fluent:GrayscaleEffect />
          </Setter.Value>
        </Setter>
        <Setter Property="Effect" TargetName="image">
          <Setter.Value>
            <Fluent:GrayscaleEffect />
          </Setter.Value>
        </Setter>
      </Trigger>
    </ControlTemplate.Triggers>
  </ControlTemplate>
  <!--Header Menu Item Template-->
  <ControlTemplate x:Key="HeaderMenuItemTemplate" TargetType="{x:Type MenuItem}">
    <ControlTemplate.Resources>
      <ResourceDictionary>
        <Style x:Key="{x:Type ScrollViewer}" TargetType="{x:Type ScrollViewer}"
               BasedOn="{StaticResource MenuScrollViewer}" />
      </ResourceDictionary>
    </ControlTemplate.Resources>
    <Grid Width="Auto" Height="22" Background="#00000000">
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="25" />
        <ColumnDefinition Width="*" />
        <ColumnDefinition Width="Auto" />
      </Grid.ColumnDefinitions>
      <Border x:Name="border" HorizontalAlignment="Stretch" Margin="0" Width="Auto" Visibility="Collapsed"
              Background="{DynamicResource ButtonHoverOuterBackgroundBrush}"
              BorderBrush="{DynamicResource ButtonHoverOuterBorderBrush}" BorderThickness="1" CornerRadius="2" Grid.Column="0"
              Grid.ColumnSpan="3">
        <Border Background="{DynamicResource ButtonHoverInnerBackgroundBrush}"
                BorderBrush="{DynamicResource ButtonHoverInnerBorderBrush}" BorderThickness="1" CornerRadius="1" />
      </Border>
      <TextBlock x:Name="textBlock_Copy" Text="{TemplateBinding Header}" Width="Auto" Height="Auto" Margin="9,3,13,3"
                 VerticalAlignment="Center" Grid.Column="1" TextTrimming="None" d:LayoutOverrides="Width" Visibility="Hidden"
                 HorizontalAlignment="Left" />
      <TextBlock x:Name="textBlock" Text="{TemplateBinding Header}" Width="Auto" Height="Auto" Margin="9,3,3,3"
                 VerticalAlignment="Center" Grid.Column="1" d:LayoutOverrides="Width" TextTrimming="CharacterEllipsis" />
      <Rectangle x:Name="rectangle" Fill="{DynamicResource MenuItemCheckBoxBackgroundBrush}"
                 Stroke="{DynamicResource MenuItemCheckBoxBorderBrush}" Grid.ColumnSpan="1" HorizontalAlignment="Center"
                 VerticalAlignment="Center" Width="20" Height="20" RadiusX="1" RadiusY="1" Visibility="Collapsed" />
      <Image x:Name="image" HorizontalAlignment="Center" VerticalAlignment="Center"
             Source="/Fluent;Component/Themes/Office2010/Images/Checked.png" Stretch="None" Visibility="Collapsed"
             SnapsToDevicePixels="True" />
      <ContentPresenter x:Name="iconImage" HorizontalAlignment="Center" Height="16" VerticalAlignment="Center"
                        Content="{Binding Icon, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource StringToImageConvert}}"
                        Width="16" Margin="3,2,2,2" SnapsToDevicePixels="True" />
      <Path x:Name="path" Stretch="Fill" Stroke="{x:Null}" HorizontalAlignment="Right" Margin="1,0,9,0" Width="4"
            Data="M0,0L1,1 0,2z" Height="7" Grid.Column="3">
        <Path.Fill>
          <LinearGradientBrush EndPoint="0.945,0.872" StartPoint="0.055,0.128">
            <GradientStop Color="#FF7C7C7C" Offset="1" />
            <GradientStop Color="#FF9E9E9E" />
          </LinearGradientBrush>
        </Path.Fill>
      </Path>
      <Popup x:Name="PART_Popup" Placement="Right" IsOpen="{TemplateBinding IsSubmenuOpen}" AllowsTransparency="True"
             Focusable="False" PopupAnimation="Fade" Margin="0,0,-4,0" VerticalAlignment="Top" Grid.ColumnSpan="2">
        <Grid Name="DropDown" SnapsToDevicePixels="True" Margin="0" VerticalAlignment="Stretch">
          <Grid.RowDefinitions>
            <RowDefinition Height="*" />
            <RowDefinition Height="10" />
          </Grid.RowDefinitions>
          <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*" />
            <ColumnDefinition Width="10" />
          </Grid.ColumnDefinitions>
          <Rectangle HorizontalAlignment="Left" VerticalAlignment="Top" Width="4" Height="4" Grid.Row="1"
                     Grid.Column="1" StrokeThickness="0" Margin="-1,-1,0,0">
            <Rectangle.Fill>
              <RadialGradientBrush RadiusX="0.984" Center="0.017,0.002" GradientOrigin="0.017,0.002" RadiusY="1">
                <GradientStop Color="#3F000000" Offset="0" />
                <GradientStop Color="#00000000" Offset="1" />
              </RadialGradientBrush>
            </Rectangle.Fill>
          </Rectangle>
          <Rectangle StrokeThickness="0" HorizontalAlignment="Left" Margin="-1,3,0,0" VerticalAlignment="Top" Width="4"
                     Height="4" Grid.Column="1" Grid.Row="0">
            <Rectangle.Fill>
              <RadialGradientBrush Center="0.032,1.01" GradientOrigin="0.032,1.01" RadiusX="0.984" RadiusY="1">
                <GradientStop Color="#3F000000" Offset="0" />
                <GradientStop Color="#00000000" Offset="1" />
              </RadialGradientBrush>
            </Rectangle.Fill>
          </Rectangle>
          <Rectangle StrokeThickness="0" HorizontalAlignment="Left" Margin="3,-1,0,0" VerticalAlignment="Top" Width="4"
                     Height="4" Grid.Column="0" Grid.Row="1">
            <Rectangle.Fill>
              <RadialGradientBrush Center="0.996,0.027" GradientOrigin="0.996,0.027" RadiusX="0.984" RadiusY="1">
                <GradientStop Color="#3F000000" Offset="0" />
                <GradientStop Color="#00000000" Offset="1" />
              </RadialGradientBrush>
            </Rectangle.Fill>
          </Rectangle>
          <Rectangle StrokeThickness="0" HorizontalAlignment="Stretch" Margin="7,-1,1,0" VerticalAlignment="Top"
                     Width="Auto" Height="4" Grid.Column="0" Grid.Row="1">
            <Rectangle.Fill>
              <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0" MappingMode="RelativeToBoundingBox">
                <GradientStop Color="#3F000000" Offset="0" />
                <GradientStop Color="#00000000" Offset="1" />
              </LinearGradientBrush>
            </Rectangle.Fill>
          </Rectangle>
          <Rectangle StrokeThickness="0" HorizontalAlignment="Left" Margin="-1,7,0,1" VerticalAlignment="Stretch"
                     Width="4" Height="Auto" Grid.Column="1" Grid.Row="0">
            <Rectangle.Fill>
              <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5" MappingMode="RelativeToBoundingBox">
                <GradientStop Color="#3F000000" Offset="0" />
                <GradientStop Color="#00000000" Offset="1" />
              </LinearGradientBrush>
            </Rectangle.Fill>
          </Rectangle>
          <Border x:Name="DropDownBorder" SnapsToDevicePixels="True"
                  Background="{DynamicResource ContextMenuBarBackgroundBrush}" BorderBrush="{DynamicResource ContextMenuBarBorderBrush}"
                  BorderThickness="1" CornerRadius="1" Grid.ColumnSpan="1" d:LayoutOverrides="Width, Height"
                  HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
            <Grid Width="Auto" Height="Auto" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
              <Border VerticalAlignment="Stretch" Width="Auto" Height="Auto"
                      BorderBrush="{DynamicResource ContextMenuBarBackgroundBrush}" BorderThickness="1" CornerRadius="1" />
              <Grid Margin="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
                <Grid.RowDefinitions>
                  <RowDefinition Height="*" />
                  <RowDefinition Height="Auto" />
                </Grid.RowDefinitions>
                <Path Fill="{x:Null}" Stretch="Fill" Stroke="#FFE2E4E7" HorizontalAlignment="Left" Margin="24,0,0,0"
                      Width="1" Height="Auto" Data="M0,0L0,1" Grid.RowSpan="2" Visibility="Visible" />
                <ScrollViewer x:Name="PART_ScrollViewer" Style="{DynamicResource MenuScrollViewer}" Margin="1"
                              SnapsToDevicePixels="True">
                  <Fluent:MenuPanel x:Name="PART_MenuPanel" IsItemsHost="True"
                                    KeyboardNavigation.DirectionalNavigation="Contained" />
                </ScrollViewer>
                <Border x:Name="resizeBorder" HorizontalAlignment="Stretch" VerticalAlignment="Top" Height="11"
                        BorderBrush="{DynamicResource ContextMenuBarResizeBorderBrush}" BorderThickness="0,1,0,0" Grid.Row="1"
                        CornerRadius="0,0,1,1" Background="{DynamicResource ContextMenuBarResizeBackgoundBrush}">
                  <Grid>
                    <Thumb x:Name="PART_ResizeVerticalThumb" HorizontalAlignment="Stretch" Margin="0,0,0,-90"
                           Width="Auto" Height="10" VerticalAlignment="Top" Cursor="SizeNS"
                           Template="{DynamicResource ResizeVerticalThumbControlTemplate}" />
                    <Thumb x:Name="PART_ResizeBothThumb" HorizontalAlignment="Right" Margin="0,0,0,-90" Width="10"
                           Height="10" VerticalAlignment="Top" Cursor="SizeNWSE" Template="{DynamicResource ResizeBothThumbControlTemplate}" />
                  </Grid>
                </Border>
              </Grid>
            </Grid>
          </Border>
        </Grid>
      </Popup>
    </Grid>
    <ControlTemplate.Triggers>
      <Trigger Property="Fluent:MenuItem.ResizeMode" Value="None">
        <Setter Property="Visibility" TargetName="resizeBorder" Value="Collapsed" />
      </Trigger>
      <Trigger Property="Fluent:MenuItem.ResizeMode" Value="Both">
        <Setter Property="Visibility" TargetName="PART_ResizeVerticalThumb" Value="Collapsed" />
        <Setter Property="Visibility" TargetName="PART_ResizeBothThumb" Value="Visible" />
        <Setter Property="Visibility" TargetName="resizeBorder" Value="Visible" />
      </Trigger>
      <Trigger Property="Fluent:MenuItem.ResizeMode" Value="Vertical">
        <Setter Property="Visibility" TargetName="PART_ResizeBothThumb" Value="Collapsed" />
        <Setter Property="Visibility" TargetName="PART_ResizeVerticalThumb" Value="Visible" />
        <Setter Property="Visibility" TargetName="resizeBorder" Value="Visible" />
      </Trigger>
      <Trigger Property="IsChecked" Value="True">
        <Setter Property="Visibility" TargetName="rectangle" Value="Visible" />
      </Trigger>
      <MultiTrigger>
        <MultiTrigger.Conditions>
          <Condition Property="Icon" Value="{x:Null}" />
          <Condition Property="IsChecked" Value="True" />
        </MultiTrigger.Conditions>
        <Setter Property="Visibility" TargetName="image" Value="Visible" />
      </MultiTrigger>
      <MultiTrigger>
        <MultiTrigger.Conditions>
          <Condition Property="IsHighlighted" Value="True" />
          <Condition Property="IsEnabled" Value="True" />
        </MultiTrigger.Conditions>
        <Setter Property="Visibility" TargetName="border" Value="Visible" />
      </MultiTrigger>
      <Trigger Property="IsEnabled" Value="False">
        <Setter Property="Opacity" TargetName="iconImage" Value="0.5" />
        <Setter Property="Opacity" TargetName="image" Value="0.5" />
        <Setter Property="Opacity" TargetName="textBlock" Value="0.5" />
        <Setter Property="Effect" TargetName="iconImage">
          <Setter.Value>
            <Fluent:GrayscaleEffect />
          </Setter.Value>
        </Setter>
        <Setter Property="Effect" TargetName="image">
          <Setter.Value>
            <Fluent:GrayscaleEffect />
          </Setter.Value>
        </Setter>
      </Trigger>
    </ControlTemplate.Triggers>
  </ControlTemplate>
  <!--Splited Menu Item Template-->
  <ControlTemplate x:Key="SplitedMenuItemTemplate" TargetType="{x:Type MenuItem}">
    <ControlTemplate.Resources>
      <ResourceDictionary>
        <Style x:Key="{x:Type ScrollViewer}" TargetType="{x:Type ScrollViewer}"
               BasedOn="{StaticResource MenuScrollViewer}" />
      </ResourceDictionary>
    </ControlTemplate.Resources>
    <Grid Width="Auto" Height="22" Background="#00000000">
      <Grid.ColumnDefinitions>
        <ColumnDefinition Width="25" />
        <ColumnDefinition Width="*" />
        <ColumnDefinition Width="Auto" />
      </Grid.ColumnDefinitions>

      <Rectangle Grid.Column="2" HorizontalAlignment="Right" Margin="0,4,23,4"
                 Stroke="{DynamicResource WindowContentBorderBrush}" Width="1" />

      <Grid HorizontalAlignment="Stretch" Margin="0" Width="Auto" Grid.Column="0" Grid.ColumnSpan="3">
        <Grid.ColumnDefinitions>
          <ColumnDefinition Width="0.905*" />
          <ColumnDefinition x:Name="columnDefinition" Width="23" />
        </Grid.ColumnDefinitions>
        <Border x:Name="PART_ButtonBorder" Visibility="Collapsed"
                Background="{DynamicResource ButtonHoverOuterBackgroundBrush}"
                BorderBrush="{DynamicResource ButtonHoverOuterBorderBrush}" BorderThickness="1" CornerRadius="2" Margin="0,0,-1,0">
          <Border x:Name="border1" Background="{DynamicResource ButtonHoverInnerBackgroundBrush}"
                  BorderBrush="{DynamicResource ButtonHoverInnerBorderBrush}" BorderThickness="1" CornerRadius="1" Grid.ColumnSpan="2" />
        </Border>
        <Border x:Name="border_Copy" HorizontalAlignment="Stretch" Margin="0" Width="Auto" Visibility="Collapsed"
                BorderBrush="{DynamicResource ButtonHoverOuterBorderBrush}" BorderThickness="1" CornerRadius="2" Grid.Column="1"
                Background="{DynamicResource TransparentBrush}">
          <Border x:Name="border1_Copy" Background="{DynamicResource ButtonHoverInnerBackgroundBrush}"
                  BorderBrush="{DynamicResource ButtonHoverInnerBorderBrush}" BorderThickness="1" CornerRadius="1" Grid.ColumnSpan="1"
                  d:CopyToken="09a4b798-0b8a-441e-b6c8-d7787f8d7e43" Visibility="Collapsed" />
        </Border>
      </Grid>

      <TextBlock x:Name="textBlock_Copy" Text="{TemplateBinding Header}" Width="Auto" Height="Auto" Margin="9,3,13,3"
                 VerticalAlignment="Center" Grid.Column="1" TextTrimming="None" d:LayoutOverrides="Width" Visibility="Hidden"
                 HorizontalAlignment="Left" />
      <TextBlock x:Name="textBlock" Text="{TemplateBinding Header}" Width="Auto" Height="Auto" Margin="9,3,3,3"
                 VerticalAlignment="Center" Grid.Column="1" d:LayoutOverrides="Width" TextTrimming="CharacterEllipsis" />
      <Rectangle x:Name="rectangle" Fill="{DynamicResource MenuItemCheckBoxBackgroundBrush}"
                 Stroke="{DynamicResource MenuItemCheckBoxBorderBrush}" Grid.ColumnSpan="1" HorizontalAlignment="Center"
                 VerticalAlignment="Center" Width="20" Height="20" RadiusX="1" RadiusY="1" Visibility="Collapsed" />
      <Image x:Name="image" HorizontalAlignment="Center" VerticalAlignment="Center"
             Source="/Fluent;Component/Themes/Office2010/Images/Checked.png" Stretch="None" Visibility="Collapsed"
             SnapsToDevicePixels="True" />
      <ContentPresenter x:Name="iconImage" HorizontalAlignment="Center" Height="16" VerticalAlignment="Center"
                        Content="{Binding Icon, Converter={StaticResource StringToImageConvert}, RelativeSource={RelativeSource TemplatedParent}}"
                        Width="16" Margin="3,2,2,2" SnapsToDevicePixels="True" />
      <Path x:Name="path" Stretch="Fill" Stroke="{x:Null}" HorizontalAlignment="Right" Margin="1,0,9,0" Width="4"
            Data="M0,0L1,1 0,2z" Height="7" Grid.Column="3">
        <Path.Fill>
          <LinearGradientBrush EndPoint="0.945,0.872" StartPoint="0.055,0.128">
            <GradientStop Color="#FF7C7C7C" Offset="1" />
            <GradientStop Color="#FF9E9E9E" />
          </LinearGradientBrush>
        </Path.Fill>
      </Path>
      <Popup x:Name="PART_Popup" Placement="Right" IsOpen="{TemplateBinding IsSubmenuOpen}" AllowsTransparency="True"
             Focusable="False" PopupAnimation="Fade" Margin="0,0,-4,0" VerticalAlignment="Top" Grid.ColumnSpan="2">
        <Grid x:Name="DropDown" SnapsToDevicePixels="True" Margin="0" VerticalAlignment="Stretch">
          <Grid.RowDefinitions>
            <RowDefinition Height="*" />
            <RowDefinition Height="10" />
          </Grid.RowDefinitions>
          <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*" />
            <ColumnDefinition Width="10" />
          </Grid.ColumnDefinitions>
          <Rectangle HorizontalAlignment="Left" VerticalAlignment="Top" Width="4" Height="4" Grid.Row="1" Grid.Column="1"
                     StrokeThickness="0" Margin="-1,-1,0,0">
            <Rectangle.Fill>
              <RadialGradientBrush RadiusX="0.984" Center="0.017,0.002" GradientOrigin="0.017,0.002" RadiusY="1">
                <GradientStop Color="#3F000000" Offset="0" />
                <GradientStop Color="#00000000" Offset="1" />
              </RadialGradientBrush>
            </Rectangle.Fill>
          </Rectangle>
          <Rectangle StrokeThickness="0" HorizontalAlignment="Left" Margin="-1,3,0,0" VerticalAlignment="Top" Width="4"
                     Height="4" Grid.Column="1" Grid.Row="0">
            <Rectangle.Fill>
              <RadialGradientBrush Center="0.032,1.01" GradientOrigin="0.032,1.01" RadiusX="0.984" RadiusY="1">
                <GradientStop Color="#3F000000" Offset="0" />
                <GradientStop Color="#00000000" Offset="1" />
              </RadialGradientBrush>
            </Rectangle.Fill>
          </Rectangle>
          <Rectangle StrokeThickness="0" HorizontalAlignment="Left" Margin="3,-1,0,0" VerticalAlignment="Top" Width="4"
                     Height="4" Grid.Column="0" Grid.Row="1">
            <Rectangle.Fill>
              <RadialGradientBrush Center="0.996,0.027" GradientOrigin="0.996,0.027" RadiusX="0.984" RadiusY="1">
                <GradientStop Color="#3F000000" Offset="0" />
                <GradientStop Color="#00000000" Offset="1" />
              </RadialGradientBrush>
            </Rectangle.Fill>
          </Rectangle>
          <Rectangle StrokeThickness="0" HorizontalAlignment="Stretch" Margin="7,-1,1,0" VerticalAlignment="Top"
                     Width="Auto" Height="4" Grid.Column="0" Grid.Row="1">
            <Rectangle.Fill>
              <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0" MappingMode="RelativeToBoundingBox">
                <GradientStop Color="#3F000000" Offset="0" />
                <GradientStop Color="#00000000" Offset="1" />
              </LinearGradientBrush>
            </Rectangle.Fill>
          </Rectangle>
          <Rectangle StrokeThickness="0" HorizontalAlignment="Left" Margin="-1,7,0,1" VerticalAlignment="Stretch"
                     Width="4" Height="Auto" Grid.Column="1" Grid.Row="0">
            <Rectangle.Fill>
              <LinearGradientBrush EndPoint="1,0.5" StartPoint="0,0.5" MappingMode="RelativeToBoundingBox">
                <GradientStop Color="#3F000000" Offset="0" />
                <GradientStop Color="#00000000" Offset="1" />
              </LinearGradientBrush>
            </Rectangle.Fill>
          </Rectangle>
          <Border x:Name="DropDownBorder" SnapsToDevicePixels="True"
                  Background="{DynamicResource ContextMenuBarBackgroundBrush}" BorderBrush="{DynamicResource ContextMenuBarBorderBrush}"
                  BorderThickness="1" CornerRadius="1" Grid.ColumnSpan="1" d:LayoutOverrides="Width, Height"
                  HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
            <Grid Width="Auto" Height="Auto" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
              <Border VerticalAlignment="Stretch" Width="Auto" Height="Auto"
                      BorderBrush="{DynamicResource ContextMenuBarBackgroundBrush}" BorderThickness="1" CornerRadius="1" />
              <Grid Margin="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
                <Grid.RowDefinitions>
                  <RowDefinition Height="*" />
                  <RowDefinition Height="Auto" />
                </Grid.RowDefinitions>
                <Path Fill="{x:Null}" Stretch="Fill" Stroke="#FFE2E4E7" HorizontalAlignment="Left" Margin="24,0,0,0"
                      Width="1" Height="Auto" Data="M0,0L0,1" Grid.RowSpan="2" Visibility="Visible" />
                <ScrollViewer Margin="1" x:Name="PART_ScrollViewer" Style="{DynamicResource MenuScrollViewer}"
                              SnapsToDevicePixels="True">
                  <Fluent:MenuPanel x:Name="PART_MenuPanel" IsItemsHost="True"
                                    KeyboardNavigation.DirectionalNavigation="Contained" />
                </ScrollViewer>
                <Border x:Name="resizeBorder" HorizontalAlignment="Stretch" VerticalAlignment="Top" Height="11"
                        BorderBrush="{DynamicResource ContextMenuBarResizeBorderBrush}" BorderThickness="0,1,0,0" Grid.Row="1"
                        CornerRadius="0,0,1,1" Background="{DynamicResource ContextMenuBarResizeBackgoundBrush}">
                  <Grid>
                    <Thumb x:Name="PART_ResizeVerticalThumb" HorizontalAlignment="Stretch" Margin="0,0,0,-90" Width="Auto"
                           Height="10" VerticalAlignment="Top" Cursor="SizeNS" Template="{DynamicResource ResizeVerticalThumbControlTemplate}" />
                    <Thumb x:Name="PART_ResizeBothThumb" HorizontalAlignment="Right" Margin="0,0,0,-90" Width="10" Height="10"
                           VerticalAlignment="Top" Cursor="SizeNWSE" Template="{DynamicResource ResizeBothThumbControlTemplate}" />
                  </Grid>
                </Border>
              </Grid>
            </Grid>
          </Border>
        </Grid>
      </Popup>
    </Grid>
    <ControlTemplate.Triggers>
      <Trigger Property="IsMouseOver" Value="True" SourceName="border_Copy">
        <Setter Property="Visibility" TargetName="border1_Copy" Value="Visible" />
      </Trigger>
      <Trigger Property="Fluent:MenuItem.ResizeMode" Value="None">
        <Setter Property="Visibility" TargetName="resizeBorder" Value="Collapsed" />
      </Trigger>
      <Trigger Property="Fluent:MenuItem.ResizeMode" Value="Both">
        <Setter Property="Visibility" TargetName="PART_ResizeVerticalThumb" Value="Collapsed" />
        <Setter Property="Visibility" TargetName="PART_ResizeBothThumb" Value="Visible" />
        <Setter Property="Visibility" TargetName="resizeBorder" Value="Visible" />
      </Trigger>
      <Trigger Property="Fluent:MenuItem.ResizeMode" Value="Vertical">
        <Setter Property="Visibility" TargetName="PART_ResizeBothThumb" Value="Collapsed" />
        <Setter Property="Visibility" TargetName="PART_ResizeVerticalThumb" Value="Visible" />
        <Setter Property="Visibility" TargetName="resizeBorder" Value="Visible" />
      </Trigger>
      <Trigger Property="IsChecked" Value="True">
        <Setter Property="Visibility" TargetName="rectangle" Value="Visible" />
      </Trigger>
      <MultiTrigger>
        <MultiTrigger.Conditions>
          <Condition Property="Icon" Value="{x:Null}" />
          <Condition Property="IsChecked" Value="True" />
        </MultiTrigger.Conditions>
        <Setter Property="Visibility" TargetName="image" Value="Visible" />
      </MultiTrigger>
      <MultiTrigger>
        <MultiTrigger.Conditions>
          <Condition Property="IsHighlighted" Value="True" />
          <Condition Property="IsEnabled" Value="True" />
        </MultiTrigger.Conditions>
        <Setter Property="Visibility" TargetName="PART_ButtonBorder" Value="Visible" />
        <Setter Property="Visibility" TargetName="border_Copy" Value="Visible" />
      </MultiTrigger>
      <Trigger Property="IsSubmenuOpen" Value="True">
        <Setter Property="Visibility" TargetName="border1_Copy" Value="Visible" />
      </Trigger>
      <Trigger Property="IsEnabled" Value="False">
        <Setter Property="Opacity" TargetName="iconImage" Value="0.5" />
        <Setter Property="Opacity" TargetName="image" Value="0.5" />
        <Setter Property="Opacity" TargetName="textBlock" Value="0.5" />
        <Setter Property="Effect" TargetName="iconImage">
          <Setter.Value>
            <Fluent:GrayscaleEffect />
          </Setter.Value>
        </Setter>
        <Setter Property="Effect" TargetName="image">
          <Setter.Value>
            <Fluent:GrayscaleEffect />
          </Setter.Value>
        </Setter>
      </Trigger>
    </ControlTemplate.Triggers>
  </ControlTemplate>

  <!--Menu Item Style-->
  <Style x:Key="MenuItemStyle" TargetType="{x:Type MenuItem}">
    <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto" />
    <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Hidden" />
    <Setter Property="FontFamily" Value="{DynamicResource DefaultFontFamily}" />
    <Setter Property="FontSize" Value="{DynamicResource DefaultFontSize}" />
    <Setter Property="Foreground" Value="{DynamicResource DefaultFontBrush}" />
    <Setter Property="SnapsToDevicePixels" Value="True" />
    <Setter Property="Fluent:FrameworkHelper.UseLayoutRounding" Value="True" />
    <Setter Property="OverridesDefaultStyle" Value="True" />
    <Setter Property="Template" Value="{StaticResource MenuItemTemplate}" />
    <Style.Triggers>
      <MultiTrigger>
        <MultiTrigger.Conditions>
          <Condition Property="Fluent:MenuItem.IsSplited" Value="True" />
          <Condition Property="HasItems" Value="True" />
        </MultiTrigger.Conditions>
        <Setter Property="Template" Value="{StaticResource SplitedMenuItemTemplate}" />
      </MultiTrigger>
      <MultiTrigger>
        <MultiTrigger.Conditions>
          <Condition Property="Fluent:MenuItem.IsSplited" Value="False" />
          <Condition Property="HasItems" Value="True" />
        </MultiTrigger.Conditions>
        <Setter Property="Template" Value="{StaticResource HeaderMenuItemTemplate}" />
      </MultiTrigger>
    </Style.Triggers>
  </Style>
  <Style TargetType="{x:Type MenuItem}" BasedOn="{StaticResource MenuItemStyle}" />
  <Style TargetType="{x:Type Fluent:MenuItem}" BasedOn="{StaticResource {x:Type MenuItem}}" />
</ResourceDictionary>